const db = require("../db/db.js");
const sq=require("../sqlite/sqlites.js")
const red=require("../redis/redis.js")
module.exports = function (server) {
  var io = require('socket.io')(server, {
    allowEIO3: true,
    cors: {
      origin: "http://127.0.0.1:8001",
      methods: ["GET", "POST"],
      credentials: true
    }
  });
  // 监视客户端与服务器的连接
  io.on('connection', function (socket) {
    // console.log('有一个客户端连接上了服务器');
    // 绑定监听, 接收客户端发送的消息，
    socket.on('sendMsg', function (data) {
      console.log('服务器接收到客户端发送的消息', data)
      // 处理数据
      // 服务器向客户端发送消息
      console.log('服务器向客户端发送消息', data)
      //建立实时发送接受连接
      //监听到sendMsg后发送welcome,前端接受到welcome后发送sendMsg，形成无限循环的实时通讯
      io.emit('receiveMsg', data)
      io.emit('welcome', '订阅成功')
    });
    socket.on('server', function (data) {
      async function main() {
        var data = await db.dbTrend("test");
        io.emit('server', data)
      }
      main()
    });
    //实时获取Sqlite里的数据
    socket.on('Sqliteback', function (data) {
      async function main() {
        var data = await sq.getSqlite();
        io.emit('SqliteServer', data)
      }
      main()
    });
    //实时获取Redis里的数据
    socket.on('redisback', function (data) {
      async function main() {
        var data = await red.get('key');
        io.emit('redisServer', data)
      }
      main()
    });
  })
}